<?php
/*
	本插件：$this->model('model')->方法名();
	其他地方调用：model('jy_aixiaoyi/model')->方法名();
*/
namespace jy_aixiaoyi;
defined('BY_JYA') or exit('error');
class tuling extends \plugin{
	//发起http请求
	public function request($rurl,$post=null,$isres=false){
		$basic=$this->plugin_setting('basic');
		if(!$basic['tulingkey']){
			if($isres){
				$res['choices'][0]['text']='暂时无法使用，请联系管理员，设置好基本参数API Key';
				return $res;
			}else{
				exi('暂时无法使用，请联系管理员，设置好基本参数API Key','error');
			}
		}
		$post=ijson_encode($post);
		$result=cfc('http')->ihttp_request($rurl,$post);
		if(is_error($result)){			
			$message="访问失败, 错误: {$result['message']}";
			if($return_error){
				return error($message);
			}else{
				exi($message,'error');
			}
		}
		$data=preg_replace('/[\x00-\x1F]/','',$result['content']);
		$data=@json_decode($data,true);
		if($data['errcode']){
		}
		if($direct){
			return $result;
		}
		if(!is_array($data) || !$data){
			$message='访问接口错误，以下为原始数据：'.$result['content'];
			if($return_error){
				return error($message);
			}else{
				exi($message,'error');
			}
		}
		return $data;
	}
	//获取聊天文本
	public function getmsg($content,$isexi=false) {
		//return '这里是测试数据！这里是测试数据！这里是测试数据！这里是测试数据！这里是测试数据！这里是测试数据！';
		$url = "http://www.tuling123.com/openapi/api";
		$post=array(
			'userid'=>$_SESSION['uid'],
			'info'=>$content,
		);
		$res=$this->request($url,$post,true);
		if($res['error']){
			if($isexi){
				exi('获取失败：'.$res['type'].','.$res['message'],'error');
			}else{
				$basic=$this->plugin_setting('basic');
				return $basic['nomsg']?:'暂时无法回答您的问题！请联系管理员！';
			}
		}
		$msg=$res['text'];
		if($msg){
			$this->model('model')->upwenda($content,$msg);
		}
		return $msg;
	}
}
?>